OpenVINO™工具套件
■ OpenVINO™ 工具套件能够加速深度学习推理,支持异构部署,具备模型量化功能并预置多种优化过的AI框架。
■ 它帮助爱奇艺提升实时弹幕显示推理速度达5倍,提升文本检测推理性能达11倍。
■ 它帮助西门子MRI的AI分析效能提升达原来的5.5倍。
■ 它帮助首云将AI业务并发接入能力提升了2.4倍。
经历了之前几期对至强平台的揭秘,我们想必都已了解:英特尔® 至强® 平台对于AI应用的加速,从来都不是依靠某个单一的产品或技术特性来实现的。我们看到英特尔® AVX-512和英特尔® 深度学习加速(DL Boost)技术的导入,让至强平台有了能够加速AI任务,尤其是基于INT8和BF16这两种数据格式的AI任务所需的“VIP专用车道”;我们还看到面向英特尔® 架构优化的多种主流AI框架的出现,让AI应用更好地感知并充分利用“专用车道”的加速效果;还有Analytics Zoo,是打通大数据平台与AI应用平台的高速车道,是平衡AI铁三角——算力、算法和数据发展步骤的关键……所有这些与AI加速相关的产品特性和功能在组合后,才是至强平台加速AI应用的底蕴所在。
今天这期揭秘,我们的焦点将汇聚在OpenVINO™ 这款软件工具套件身上,它在英特尔® 架构平台上专攻AI应用加速的产品技术组合中也占据着举足轻重的地位。谈到它的主要功能,那就是“变形”或者“改造”,而这种变形或改造的对象,正是AI应用涉及的数据。
众所周知,AI应用原生的数据格式并不统一,不过大多数AI模型多采用传统的FP32数据格式,其实这种格式完全可以在损失很小精度的前提下,转换成BF16或INT8格式,以换取更高的处理效率或者说吞吐量,这正是英特尔为至强平台上导入和更新深度学习加速技术,或者说在CPU上实现INT8和BF16数据处理加速的源起,不过,要想真正用好这些加速特性,大家要么得人为地对AI模型实施数据格式转换,要么就得用更为专业和省心的工具来帮忙。
人为转换显然费时费力,不仅无法根据处理器平台特性实施优化,且转换后的模型也无法兼容不同的硬件平台。这就如同专为小型车优化的车道上,却不断驶来传统的大型车辆。驾车的司机要么只能选择维持原速度,甚至得降速前进,要么就必须在上路前自己动手将大车改成适合车道的尺寸,不论采用这两种方法中的哪一种,显然都无法便捷和充分地利用到至强® 平台提供的加速支持。
由英特尔推出的OpenVINO™ 工具套件,则是专业和省心工具的代表,它提供的模型量化功能,为上述问题提供了应对良方。它能让基于不同AI框架,如TensorFlow、MXNet、PyTorch等构建的FP32数据格式AI模型,在损失很少精度的情况下转化为INT8和BF16数据格式。
图一 OpenVINO™ 工具套件提供的模型量化功能
如图一所示,OpenVINO™ 工具套件就像是一个神奇的“自动化改造车间”,当基于FP32数据格式的AI模型来到这里时,都要自动化改造为可利用英特尔® AVX-512和英特尔® 深度学习加速技术提速的INT8和BF16数据格式。这就好比赛车在上场前都会针对赛道特点进行全面的优化改装,在甩掉了所有干扰速度、又不会影响行车安全的累赘后,就只剩勇往直前,疾速狂飙了!
除模型量化功能外,针对一系列AI应用场景,如视觉模拟、自动语音识别、自然语言处理及推荐系统等,OpenVINO™ 工具套件还提供了能提升它们开发和部署效率的组件,例如OpenVINO™ Model Server和OpenVINO™ Model Zoo等组件可对基于TensorFlow、PyTorch、MxNet、Keras等不同框架构建的训练模型实施更为高效的优化,并简化这些模型部署的流程及耗时。更值得期待的是,OpenVINO™ 工具套件还有基于通用API为用户智能选择AI加速硬件的功能,让用户的AI应用在一次编写之后,就可以更智能、也更有针对性地选择英特尔的CPU、VPU、GPU、FPGA、ASIC等芯片,来实现异构的部署及更优的加速能力。
目前,已经有很多行业和领域的企业用户开始利用OpenVINO™ 工具套件所提供的种种优势功能来为AI应用提供加速支持。例如在在线视频服务领域,OpenVINO™ 工具套件与英特尔® 至强® 可扩展处理器相结合,已帮助爱奇艺 Jarvis 深度学习云平台有效提升了 AI应用的推理效率,如图二所示,在典型的图像抠图应用场景中,OpenVINO™ 工具套件带来了5倍的推理速度提升,而在不良内容检测和文本检测场景中,效率提升更是达到了6倍和11倍之多[1]。
图二 OpenVINO™ 工具套件在爱奇艺AI应用场景中带来的性能提升
在医疗行业的应用中,西门子医疗团队选用了第二代英特尔® 至强® 可扩展处理器与OpenVINO™ 工具套件,以保证在极小准确率损失的情况下来加速心脏MRI的AI推理速度。如图三所示,在使用AI进行心脏图像分割的过程中,右上是未使用INT8模型的传统ONNX输出图像,而右下是使用INT8模型的输出图像,可以直观地看到,两者的输出成像质量几乎保持一致。同时,从推理速度来看,结合第二代英特尔® 至强® 可扩展处理器、英特尔® 深度学习加速技术以及OpenVINO™ 工具套件可使得心脏MRI的AI分析效能得以大幅增强——优化后的方案在量化和执行模型时,其性能可提升至未优化方案的5.5倍[2]。
图三 使用INT8模型前后的输出成像结果对比
OpenVINO™ Model Server组件对AI应用优化和部署的加速功效,也有实战用例予以佐证:首都在线旗下的云服务品牌——CDS首云就导入这一功能,并借助它对英特尔® 架构基础设施的专门优化、与既有云平台K8S的良好集成以及对多种主流深度学习框架的出色支持,大大简化了其AIaaS(AI云服务)方案的部署流程并提升了其生产效能。如图四所示,在其常见的实时视频非法内容检测场景对比测试中,使用OpenVINO™ Model Server组件的方案在支持的用户并发数量上远胜于对比组,相比采用Tensorflow Serving的方案提升了2.4倍[3]。
图四 CDS首云针对不良视频内容检测场景的验证测试结果
[1]如欲了解爱奇艺案例的更多技术细节,请访问:
https://www.intel.cn/content/www/cn/zh/analytics/artificial-intelligence/optimize-the-efficiency-of-dl-inference-and-create-smarter-video-services.html;
[2] 如欲了解西门子案例的更多技术细节,请访问:
https://www.intel.cn/content/www/cn/zh/service-providers/siemens-healthineers-accelerates-ai-for-cardiology.html;
[3] 测试配置:
测试组:处理器:单路英特尔® 至强® 金牌 6240Y 处理器,18核心/36线程,超线程开启,睿频关闭;内存:6 * 16GB 2666MHz DDR4;存储:2*英特尔S4510 SSD 480GB;BIOS:2.48;操作系统:CentOS Linux Release 7.8.2003(Core);Kernel版本:3.10.0-1127.19.1.el7.x86_64;OpenVINO Model Server版本:21.1;对比组:处理器:单路英特尔® 至强® 金牌 6240Y 处理器,18核心/36线程,超线程开启,睿频关闭;内存:6 * 16GB 2666MHz DDR4;存储:2*英特尔S4510 SSD 480GB;BIOS:2.48;操作系统:CentOS Linux Release 7.8.2003(Core);Kernel版本:3.10.0-1127.19.1.el7.x86_64;Tensorflow Serving版本:2.3.0。